﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using University.Workshop.Business;

namespace University.Workshop.Presenters.WaterPurchase
{
    public class PresenterFirstStepForRegisterWaterPurchase
    {
        IFirstStepForRegisterWaterPurchase view;

        public PresenterFirstStepForRegisterWaterPurchase(IFirstStepForRegisterWaterPurchase view)
        {
            this.view = view;
        }

        public void UpdateData()
        {
            view.LicencePlate = view.WaterPurchaseToRegister.LicencePlate;
            view.Capacity = view.WaterPurchaseToRegister.Capacity;
            view.PersonNames = view.WaterPurchaseToRegister.PersonNames;
            view.PersonLastNames = view.WaterPurchaseToRegister.PersonLastNames;
        }

        public void ChargeDataPerson()
        {
            view.WaterPurchaseToRegister.LicencePlate = view.LicencePlate;

            if (view.LicencePlate != "")    //Da error cuando intenta cargar y se ingresa una placa vacia
            {
                try
                {
                    view.WaterPurchaseToRegister.Capacity = view.Capacity;
                    view.WaterPurchaseToRegister.PersonNames = view.PersonNames;
                    view.WaterPurchaseToRegister.PersonLastNames = view.PersonLastNames;
                }
                catch (Exception ex)
                {
                }
            }

        }

        public Boolean VerifyIfCisternExist()
        {
            Model.Cistern cistern = ManagerWaterPurchase.GetCisternByPlate(new Model.Cistern { LicencePlate = view.LicencePlate });

            if (cistern != null)
            {
                //view.SystemMessage = "El CI ya se encuentra registrado en la base de datos, los datos serán actualizados.";
                view.PersonLastNames = cistern.LastNameDriver;
                view.PersonNames = cistern.NameDriver;
                view.Capacity = cistern.Capacity.ToString();
                return true;
            }
            else
                view.SystemMessage = "La placa no se encuentra registrada, ingrese una válida.";
            return false;
        }

        /*public Boolean VerifyIfUserExist()
        {
            Model.User user = ManagerUser.GetUserByUserId(new Model.User() { UserId = view.LicencePlate });
            if (user != null)
            {
                view.SystemMessage = "El CI ya se encuentra asignado a un usuario en la base de datos, debe proceder a modificarlo.";
                return true;
            }
            return false;
        }*/
    }
}
